package com.yuzhi.common.contant;

/**
 * 缓存组名称常量
 * <p>
 * key 格式为 cacheNames#ttl#maxIdleTime#maxSize
 * <p>
 * ttl 过期时间 如果设置为0则不过期 默认为0
 * maxIdleTime 最大空闲时间 根据LRU算法清理空闲数据 如果设置为0则不检测 默认为0
 * maxSize 组最大长度 根据LRU算法清理溢出数据 如果设置为0则无限长 默认为0
 * <p>
 * 例子: test#60s、test#0#60s、test#0#1m#1000、test#1h#0#500
 *
 * @author auto
 */
public interface CacheNames {

    /**
     * 演示案例
     */
    String DEMO_CACHE = "demo:cache#60s#10m#20";

    /**
     * 系统配置
     */
    String SYS_CONFIG = "sys_config";

    /**
     * 数据字典
     */
    String SYS_DICT = "sys_dict";

    /**
     * 用户账户
     */
    String SYS_USER_NAME = "sys_user_name#30d";

    /**
     * 部门
     */
    String SYS_DEPT = "sys_dept#30d";

    /**
     * OSS内容
     */
    String SYS_OSS = "sys_oss#30d";

    /**
     * OSS配置
     */
    String SYS_OSS_CONFIG = "sys_oss_config";

    /**
     * 在线用户
     */
    String ONLINE_TOKEN = "online_tokens";

    /**
     * 站点缓存标识符
     */
    String STATION_KEY = "station_key";

    /**
     * 站点缓存标识符
     */
    String RRMST_KEY = "rrmst_key";

    /**
     * 站点缓存信息
     */
    String STATION_INFO = "station_info";

    /**
     * 泵站缓存标识符
     */
    String PUMP_KEY = "pump_key";

    /**
     * 泵站缓存信息
     */
    String PUMP_INFO = "pump_info";
    /**
     * 灌区缓存标识
     */
    String IRRIGATED_KEY = "irrigated_key";
    /**
     * 灌区缓存信息
     */
    String IRRIGATED_INFO = "irrigated_info";


    /**
     * 工程所有的 id code  name
     */
    String PROJECT_ID_CODE_NAME = "project_id_code_name";

    /**
     * 污水设施统计信息
     */
    String GZZH_SEWAGE_STATISTICS = "gzzh_sewage_statistics";

    /**
     * 维修工单编号前缀
     */
    String REPAIR_ORDER_NO_PREFIX = "repair_order_no:";
}
